From c573c8a5b7393a00ee326d274b13970ba186d81f Mon Sep 17 00:00:00 2001 From: robertlipe Date: Thu, 13 Feb 2014 03:19:34 +0000 Subject: [PATCH] Actually commit the fixes I meant to make BEFORE that run... git-svn-id: http://gpsbabel.googlecode.com/svn/trunk@4736 f51c46e8-681c-474f-0cfe-069cfd0219fb --- gpsbabel/bcr.cc | 2 +- gpsbabel/compegps.cc | 1 + gpsbabel/defs.h | 2 +- gpsbabel/dmtlog.cc | 5 ++++- gpsbabel/garmin_gpi.cc | 1 + gpsbabel/garmin_tables.cc | 1 + gpsbabel/grtcirc.cc | 1 - gpsbabel/jeeps/gpsmath.cc | 6 ++++++ gpsbabel/trackfilter.cc | 7 +++---- 9 files changed, 18 insertions(+), 8 deletions(-) diff --git a/gpsbabel/bcr.cc b/gpsbabel/bcr.cc index f76b383ec..f84e99987 100644 --- a/gpsbabel/bcr.cc +++ b/gpsbabel/bcr.cc @@ -481,7 +481,7 @@ bcr_route_header(const route_head* route) s2 = csv_stringclean(s2, ",\t\r\n"); } - if (s2.isEmpty()) { + if (sout.isEmpty()) { sout = QString("%1,%2,@,0").arg(s1).arg(s1); } else { sout = QString("%1,%2,@,0").arg(s1).arg(s2); diff --git a/gpsbabel/compegps.cc b/gpsbabel/compegps.cc index 758c1c339..77a2eea04 100644 --- a/gpsbabel/compegps.cc +++ b/gpsbabel/compegps.cc @@ -209,6 +209,7 @@ parse_wpt(char* buff) compegps_parse_time(c, &tm); wpt->SetCreationTime(mkgmtime(&tm)); } + break; case 6: wpt->altitude = atof(c); break; diff --git a/gpsbabel/defs.h b/gpsbabel/defs.h index f6110de4f..f7c44c08e 100644 --- a/gpsbabel/defs.h +++ b/gpsbabel/defs.h @@ -376,7 +376,7 @@ public: wp_flags() : shortname_is_synthetic(0), cet_converted(0), - fmt_use(0), + fmt_use(1), temperature(0), proximity(0), course(0), diff --git a/gpsbabel/dmtlog.cc b/gpsbabel/dmtlog.cc index de6dfa082..7a98213ce 100644 --- a/gpsbabel/dmtlog.cc +++ b/gpsbabel/dmtlog.cc @@ -429,7 +429,6 @@ read_CTrackFile(const int version) int32_t ux; route_head* track; int i; - int datum; u1 = gbfgetint16(fin); @@ -461,6 +460,7 @@ read_CTrackFile(const int version) } tcount = gbfgetint32(fin); + int datum = 118; if (tcount > 0) { datum = read_datum(fin); if (version == 8) { @@ -487,6 +487,9 @@ read_CTrackFile(const int version) wpt->longitude = gbfgetdbl(fin); wpt->altitude = gbfgetdbl(fin); + if (datum < 0) { + fatal(MYNAME ": Invalid datum %d found", datum); + } convert_datum(wpt, datum); track_add_wpt(track, wpt); diff --git a/gpsbabel/garmin_gpi.cc b/gpsbabel/garmin_gpi.cc index 7217bd8a1..68867a521 100644 --- a/gpsbabel/garmin_gpi.cc +++ b/gpsbabel/garmin_gpi.cc @@ -633,6 +633,7 @@ read_tag(const char* caller, const int tag, Waypoint* wpt) case 0x8000b: /* address (street/city...) */ (void) gbfgetint32(fin); + // FALLTHROUGH case 0xb: /* as seen in German POI files. */ PP; mask = gbfgetint16(fin); /* address fields mask */ diff --git a/gpsbabel/garmin_tables.cc b/gpsbabel/garmin_tables.cc index d0f85a701..613de3149 100644 --- a/gpsbabel/garmin_tables.cc +++ b/gpsbabel/garmin_tables.cc @@ -684,6 +684,7 @@ gt_switch_display_mode_value(const unsigned char display_mode, const int protoid case 109: case 110: return display_mode & 3; + break; case 104: switch (display_mode) { case 0: diff --git a/gpsbabel/grtcirc.cc b/gpsbabel/grtcirc.cc index f2f5509d3..2444a1908 100644 --- a/gpsbabel/grtcirc.cc +++ b/gpsbabel/grtcirc.cc @@ -296,7 +296,6 @@ double linedistprj(double lat1, double lon1, return 0; } } - return 0; } diff --git a/gpsbabel/jeeps/gpsmath.cc b/gpsbabel/jeeps/gpsmath.cc index efb09c881..b743a1794 100644 --- a/gpsbabel/jeeps/gpsmath.cc +++ b/gpsbabel/jeeps/gpsmath.cc @@ -1096,6 +1096,9 @@ int32 GPS_Math_WGS84_To_ICS_EN(double lat, double lon, double* E, double phi, lambda, alt, a, b; int32 datum = GPS_Lookup_Datum_Index("Palestine 1923"); + if (datum < 0) { + fatal("Unable to find Palestine 1923 in internal tables"); + } int32 ellipse = GPS_Datum[datum].ellipse; a = GPS_Ellipse[ellipse].a; @@ -1129,6 +1132,9 @@ void GPS_Math_ICS_EN_To_WGS84(double E, double N, double* lat, double* lon) double const N0 = 1126867.909; double phi, lambda, alt, a, b; int32 datum = GPS_Lookup_Datum_Index("Palestine 1923"); + if (datum < 0) { + fatal("Unable to find Palestine 1923 in internal tables"); + } int32 ellipse = GPS_Datum[datum].ellipse; a = GPS_Ellipse[ellipse].a; diff --git a/gpsbabel/trackfilter.cc b/gpsbabel/trackfilter.cc index 1206d90b5..c9cad014f 100644 --- a/gpsbabel/trackfilter.cc +++ b/gpsbabel/trackfilter.cc @@ -417,8 +417,6 @@ trackfilter_split_init_rte_name(route_head* track, const QDateTime dt) static void trackfilter_pack_init_rte_name(route_head* track, const time_t default_time) { - char buff[128]; - if (strchr(opt_title, '%') != NULL) { struct tm tm; Waypoint* wpt; @@ -430,11 +428,12 @@ trackfilter_pack_init_rte_name(route_head* track, const time_t default_time) time_t t = wpt->GetCreationTime().toTime_t(); tm = *localtime(&t); } + char buff[128]; strftime(buff, sizeof(buff), opt_title, &tm); + track->rte_name = buff; } else { - strncpy(buff, opt_title, sizeof(buff)); + track->rte_name = opt_title; } - track->rte_name = buff; } /******************************************************************************* -- 2.30.2